#include <iostream>
#include <cmath>
#include <algorithm>
#include <cstring>
#include <vector>
#include <map>
#include <queue>
#include <cstdio>
#include <string>
#include <stack>
#include <set>
#define IOS ios::sync_with_stdio(false)
using namespace std;
typedef long long ll;
const int maxn=1010;
namespace ac{
    struct well
    {
        int x,y;
        bool operator<(const well &a)const{
            return y<a.y;
        }
    }a[maxn];
    int n;
    //主输油管道为y0是的距离和
    int check(int y0){
        int sum=0;
        for(int i=1;i<=n;i++){
            sum+=abs(a[i].y-y0);
        }
        return sum;
    }
    //三分法求解最小距离和
    int search(int l,int r){
        if(l=r-1)return min(check(l),check(r));
        if(l==r)return check(l);
        int mid1=l+(r-l+1)/3,mid2=r-((r-l+1)/3);
        int sum1=check(mid1);
        int sum2=check(mid2);
        if(sum1==sum2)return search(mid1,mid2);
        if(sum1>sum2)return search(mid1,r);
        if(sum1<sum2)return search(l,mid2);
    }
};

int main()
{
    IOS;
    cout<<"油井数量:";
    cin>>ac::n;
    cout<<"油井坐标:"<<endl;
    for(int i=1;i<=ac::n;i++){
        cin>>ac::a[i].x>>ac::a[i].y;
    }
    //按照y值的大小排序
    sort(ac::a+1,ac::a+ac::n);
    //y0的范围一定在(ac::a[1].y,ac::a[ac::n].y)之间
    cout<<"最小距离和："<<ac::search(ac::a[1].y,ac::a[ac::n].y)<<endl;
    getchar();
    getchar();
    return 0;
}
